The present invention relates to an adaptive predicting circuit using a lattice filter and a corresponding differential PCM coding or decoding apparatus. It is intended for use in telecommunications, particularly in telephony.
The PCM (pulse code modulation) procedure is widely used in the field of telecommunications and particularly in telephone transmissions. According to this procedure on transmission the signal to be transmitted is sampled, the samples obtained quantized, the quantized signals are coded in digital form and the coded signals transmitted, whilst on reception the signals received are decoded and the original signal restored.
An improvement to this procedure is obtained if, instead of quantizing the input signal, the difference between this signal and a prediction signal obtained from the formation of said difference is quantized. The predicted signal is supplied by a predicting circuit or predictor, thus forming the differential PCM system.
Another improvement is obtained by multiplying the difference signal by a gain factor in order to bring about optimum use of the available levels of the quantizer. The quantized signal is then divided by the same factor to restore the original quantized sample.
In a differential PCM system the predicting circuit generally comprises a linear filter which, from a sequence of samples preceding the sample to be processed, is able to give a prediction in connection with the latter sample.
A predicting filter can be fixed once and for all and in this case its characteristics are chosen so that it is adapted to the mean, long-term spectrum of the signal to be transmitted. However, such a filter does not make it possible to obtain a very good transmission quality. The latter can be improved if the predicting filter is adapted to the developments of the signal in time, as a result of a periodic updating of its characteristics.
This adaptation can be carried out sequentially or recursively by correcting at each sampling time or instant the characteristics of the filter as a function of the value taken by the difference signal at this time. The adaptation criterion is that the mean power of the difference signal (which is to some extent an error signal) is as low as possible.
A large amount of research has already been carried out on this procedure called adaptive prediction differential PCM (or ADPCM for short), when applied to the telephone speech signal. The following articles survey the research and describe the procedures of differential PCM coding:
"Digital Coding of Speech Waveforms: PCM, DPCM, and DM quantizers" by N. S. JAYANT, published in the U.S. journal "Proceedings of IEEE," May 1974; PA1 "Adaptive predictive coding of Speech signals" by B. S. ATAL and M. R. SCHROEDER, published in the U.S. journal "B.S.T.J.", vol. 49, October 1970; PA1 "Speech Coding" by J. L. FLANAGAN, M. SCHROEDER, B. ATAL, R. CROCHIERE, N. S. JAYANT, J. M. TRIBOLET, published in the U.S. journal IEEE-COM 27, No. 4, April 1979. PA1 it makes it difficult to control the stability of the feedback loop formed in the coder (cf. FIG. 1), particularly when the number of coefficients exceeds 2; PA1 it uses coefficients, whose orders of magnitude can be very dissimilar according to the nature of the coded signals, whilst fluctuations in the values of the coefficients produced by the adaptation are of the same order of magnitude for all coefficients, so that those which are low in absolute value are of little significance, whilst their precise knowledge would improve the modeling of the spectrum of the signal and would consequently improve the efficiency of the prediction. PA1 "Stable and efficient lattice methods for linear predictor" by J. MAKHOUL, published in U.S. journal IEEE, Transactions on Acoustics, Speech and Signal Processing, October 1977; PA1 "Adaptive lattice methods for linear prediction" by J. MAKHOUL and R. VISWANATHAN, paper read to the Congress of the A.S.S.P. Group (Acoustics, Speech and Signal Processing) of the IEEE, Tulsa, 1978. PA1 (A) a lattice filter with N identical cells each having a first access, a second access, a third access and a fourth access, the first and second accesses of a cell of rank m being respectively connected to the third and fourth accesses of the preceding cells of rank m-1, each cell comprising a circuit with a delay of one sampling time connected to the second access and circuits of linear combinations of signals appearing at the accesses of the cell and more particularly two multipliers each having two inputs, one receiving a signal and the other a multiplication coefficient k.sub.m (t) dependent on the sampling time t, means being provided for supplying said coefficient k.sub.m (t) to the multipliers; PA1 (B) an adder with N inputs respectively connected to N cells and with one output supplying a prediction signal;
Systems using these general principles are briefly described relative to FIGS. 1 and 2. The circuit of FIG. 1 is a coding circuit, whilst that of FIG. 2 is a decoding circuit.
The ADPCM coder of FIG. 1 comprises an algebraic subtractor 1 with two inputs, the first receiving the signal to be coded y(t) and the second a prediction signal p(t). The output of this subtractor supplies a difference or error signal e(t), which is applied to the input of an arithmetic unit 2, controlled by a signal e(t-1). The output of arithmetic unit 2 supplies a signal en(t), which is supplied to the input of a coding circuit 3, whose output supplies a coded signal c(t), which is applied on the one hand to a transmission channel and on the other to the input of a decoding-quantizing circuit 4. The latter supplies a signal en(t), which is applied to the input of an arithmetic unit 5, controlled by the signal e(t-1). The output of the latter unit supplies a signal e(t), which is a restored error signal, which is applied to a first input of an adaptive predicting circuit 8, to the first input of an algebraic adder 7 and finally to the input of a register 6 controlled in reading by pulses coming from a clock H. This register supplies a delayed signal e(t-1), which is applied to the control input of circuits 2 and 5. The output of the adaptive predicting circuit 8 supplies the signal p(t) applied on the one hand to the second input of subtracting circuit 1 and on the other to the second input of adding circuit 7, whose output supplies a restored signal y(t), which is applied to a second input of circuit 8.
In the illustrated embodiment the speech signal y(t) is assumed to be applied to the input in digital form, e.g. as a 12 bit linearized code supplied by the decompression of the standard PCM code (the PCM coder and linearizer are not shown).
The system of circuits 2, 3, 4, 5, 6 constitutes an embodiment of a conventional adaptive quantizer, circuits 2 and 5 having the respective function of standardizing to a fixed value the power of error signal e(t) and of restoring to the standardized quantized signal en(t) its real power in order to obtain the quantized error signal e(t).
The function of register 6 is to make available at the desired time the value of signal e(t-1) used in control.
The ADPCM decoder of FIG. 2 comprises a decoding-quantizing circuit 4, whose input receives the signal c(t) from the transmission channel and whose output supplies a signal en(t), which is applied to the input of an arithmetic unit 5 controlled by a signal e(t-1). The output of this unit supplies a signal e(t), which is applied to a first input of an adaptive predicting circuit 8, to a first input of an algebraic adder 7 and finally to the input of a register 6 controlled in reading by a clock H. The output of this register is connected to a control input of circuit 5. The output of the adaptive predicting circuit 8 supplies a predicting signal p(t), which is applied to a second input of algebraic adder 7, whose output supplies a signal y(t). This signal is applied to a second input of circuit 8 and it forms at the same time the output signal of the decoder, i.e. definitively the transmitted signal corresponding to y(t).
Circuits 4, 5, 6, 7, 8 of this decoder are identical to the circuits with the same reference numerals in FIG. 1.
The present invention relates solely to the predicting circuit 8 used in the coder or decoder, the other components being of a per se known type.
In the prior art said circuit is in the form of a transverse filter and is generally of the all-zero type, due to the fact that the corresponding transfer function only has zeros and no pole. Such a filter multiplies successive samples by coefficients, the latter being calculated by means of algorithms of the stochastic gradient type or by the KAIMAN method.
This type of predictor with a transverse filter has two disadvantages:
The present invention relates to a means for improving the efficiency of predicting circuits and is directed at eliminating the stability control problem and reducing the inaccuracy of modeling. To this end the invention uses a special filter structure, called a lattice structure, with which are associated adequate means for the readjustment of coefficients.
The lattice filter is not novel per se. It comprises a circuit formed from a plurality of cells with four accesses arranged end to end, two accesses of one cell being joined to two accesses of the preceding cell. For application to prediction one signal is extracted from each of the cells and an adder summates the extracted signals to constitute the sought prediction signal.
In the lattice structure closest to that use in the invention each cell in particular comprises a delay circuit and two multipliers with two inputs, one receiving a signal and the other a multiplication coefficient, also called a partial correlation coefficient or a reflection coefficient. A lattice filter with N cells thus requires the formation of a system of N coefficients, said system being readjusted as a function of the input signal, which gives the apparatus its adaptive character.
With regards to the principle of the lattice filter and the reflection coefficient calculating means reference can be made to the following articles:
To provide a better understanding of the invention certain characteristics of lattice filters will now be described.
In a lattice structure two groups of signals S.sub.0.sup.- (t), S.sub.1.sup.- (t), . . . , S.sub.N-1.sup.- (t) and S.sub.0.sup.+ (t), . . . , S.sub.N-1.sup.+ (t) are formed, which differ from the previously coded signals y(t). The coefficients k.sub.1 (t), k.sub.2 (t), . . . , k.sub.N (t) of the lattice filter are adjusted in such a way that the following formula is proved: EQU S.sub.m.sup.- (t)=y(t-m-1)-E[y(t-m-1)/y(t-1), . . . , y (t-m)]
for m=1, . . . , M, and where E[./.] designates an estimate in the sense of least squares and the oblique bar means "conditionally to the knowledge of". The signals S.sub.0.sup.- (t), S.sub.1.sup.- (t), . . . , S.sub.N-1.sup.- (t) are on the one hand decorrelated with respect to one another and on the other are adequate for reconstituting the signals y(t-1), . . . , y(t-N). It is stated that the lattice filter is an orthogonalizer in the sense that an orthogonal base is formed there of the previously observed signals.
The prediction p(t) is calculated by the formula:
p(t)=k.sub.1 (t)S.sub.0.sup.- (t)+k.sub.2 (t)S.sub.1.sup.- (t)+ . . . +k.sub.N (t)S.sub.N-1.sup.- (t)
On the basis of the orthogonality principle the lattice filter formulas are applied: EQU S.sub.m.sup.- (t+1)=S.sub.m-1.sup.- (t)+k.sub.m (t)S.sub.m-1.sup.+ (t) for m=1, . . . , N (1) EQU S.sub.m.sup.+ (t)=S.sub.m-1.sup.- (t)+k.sub.m (t)S.sub.m-1.sup.- (t), for m=1, . . . , N (2) EQU S.sub.m-1.sup.+ (t)=S.sub.m.sup.+ (t)-k.sub.m (t)S.sub.m-1.sup.- (t), for m=1, . . . , N (3)
Formula (2) corresponds to the so-called analysis structure, because in the filter the progressive decorrelation or analysis of signal y(t) is carried out. Formula (3), which is merely Formula (2) reversed, corresponds to the so-called synthesis structure, because the progressive restoration or synthesis of the signal y(t) from signal e(t) takes place in the filter. The filter with the "analysis" structure is non-recursive (it only has zeros). The filter with the "synthesis" structure is purely recursive (it only has poles).
The coefficients k.sub.m (t), m=1, N are dimensionless and have a value which is theoretically between -1 and +1. The zeros or poles of the filter then remain within the unity circle, which guarantees the stability of the coder loop in which the filter is positioned. Thus, in practice it is merely necessary to limit the absolute value of each coefficient by 1 to preserve this stability.
According to the selected optimization criterion there are several possibilities for calculating the coefficients k.sub.m (t). In a first an attempt is made to minimize the sum of the powers of signals S.sub.m.sup.+ (t) and S.sub.m.sup.- (t+1); k.sub.m (t) then being calculated by the following formula: ##EQU1## &lt;.&gt; representing a statistical average. in practice the statistical average is replaced by a time average effected by a recursive estimate of the corresponding quantities. Thus, a conventional method is obtained for the adaptation of the coefficients and a use within the invention will be described hereinafter. A simplification of this method consists of estimating the correlation term &lt;S.sub.m-1.sup.- (t)S.sub.m-1.sup.+ (t)&gt; from the product of the signs of signals S.sub.m-1.sup.- (t) and S.sub.m-1.sup.+ (t) by establishing a correspondence between the average of the product of the signs and the exact value of the correlation coefficient by forming a hypothesis on the statistical nature of the signals. In this connection reference can be made to the article entitled "Reflection coefficient estimates based on a Markov Chain. model" published by B. DICKINSON and J. TURNER in a paper to the Congress of the A.S.S.P. Group of the IEEE in 1979.
Another method according to the same criterion consists of transforming the formulas in such a way that the coefficients are calculated by an algorithm of the gradient of form: EQU k.sub.m (t+1)=k.sub.m (t)-.tau.g(t)[S.sub.m-1.sup.- (t)S.sub.m.sup.+ (t)+S.sub.m-1.sup.+ (t)S.sub.m.sup.- (t+1)]
in which .tau. is a constant and g(t) a simultaneously adjusted gain like the inverse of a recursive estimate of the sum of the powers of signals S.sub.m-1.sup.+ (t) and S.sub.m-1.sup.- (t) in such a way that the coefficient remains dimensionless. This method is called the product p r method.
According to another criterion an attempt is made to minimize the average of the sum of the absolute values of signals S.sub.m.sup.+ (t) and S.sub.m.sup.- (t+1). A practical method for adapting the coefficients uses an algorithm of the gradient of form: EQU k.sub.m (t+1)=k.sub.m (t)-.tau.g(t)[S.sub.m-1.sup.- (t).sign S.sub.m.sup.+ (t)+S.sub.m-1.sup.+ (t).sign S.sub.m.sup.- (t+1)]
the gain g(t) being simultaneously adjusted like the inverse of a recursive estimate of the average of the sum of the absolute values of signals S.sub.m-1.sup.+ (t) and S.sub.m-1.sup.- (t) in such a way that the coefficient remains dimensionless. This method is called the hybrid product method.
The use of these algorithms will be specifically described hereinafter.
All these coefficient adaptation methods, the list of which is naturally in no way exhaustive, have been experimentally tested by measurement and listening tests. They lead to comparable performances.
The lattice filter has already been used in ADPCM equipment, but under conditions differing from differing from those of the invention. Thus, in the prior art the coefficient evaluation means have been based on an analysis of sample blocks and readjustment takes place in a member outside the filter. The system of N coefficients is calculated in this member and is supplied to the filter at the end of each analysed block or in other words once per block. Thus, such a member is of a single, non-sequential nature and is outside the filter.
According to the present invention each cell of the filter comprises a specific circuit able to calculate the coefficient allocated to this cell. Moreover, the circuit functions on the basis of signals present in the cell. Therefore it is able to readjust the coefficient which it supplies at each sampling time and in proportion to the advancement of the signals in the filter. Finally this circuit is able to supply the coefficient as soon as it is available, i.e. at each sampling time and not only after a time lapse covering several samples. The means for readjusting the reflection coefficients are therefore, according to the invention, and unlike those in the prior art of a multiple and sequential nature whilst being positioned inside the filter.